package day16.pack8;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.ArrayList;

@Data
public class Clazz implements Serializable {
    public Clazz(int size, String clazzName, int clazzId) {
        this.size = size;
        this.clazzName = clazzName;
        this.clazzId = clazzId;
        System.out.println("执行了Clazz有参数的构造");
    }

    public Clazz() {
        System.out.println("执行了Clazz构造");
    }
    // 当实现了Serializable，就会有一个默认的版本号，并且每次修改代码都会改变隐藏的版本号
    // 每次序列化和反序列化
    // 序列化会存档此ID。反序列化会对比此ID。不一致的时候无法反序列，会抛出。无效类异常

    // 如果显示的去写了版本号，那么反序列化的时候可能造成数据不一致
    private int size;
    private String clazzName;
    private transient int clazzId;
    public static String CLAZZ_TYPE;
}
